home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
rbbs_pc
/
subjct20.zip
/
SUBJECT.DOC
next >
Wrap
Text File
|
1990-01-06
|
22KB
|
361 lines
------------------------------------------------------------
SUBJECT Version 2.0
<)> ~~~~~~~~~~~~~~~~~~~~
<(> ! <(> A Freely available RBBS-PC Conference
! ! Messages utility
[SUBJCT20.ZIP]
by Vaishnava dasa -- 12/25/89
------------------------------------------------------------
Use: Scans RBBS-PC messages files and writes a file listing
<*> ~~~ the most popular threads in descending order. Various
<*> ! formating options included.
! <*> ------------------------------------------------------------
<*> !
!
.---.
| O-- UBJECT.EXE can be used to create automatically a text file showing the
`---. number of messages per thread in a RBBS-PC Messages file. The output
--O | file can then be used as the Conference's WELCOME file.
`---'
Files Included in this archive:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUBJECT.EXE - Executable program
SUBJECT.DOC - This text file
SUBJECT.TMP - Sample non-graphics Template file
SUBJECTG.TMP - Sample ASCII-Graphics Template file
SUBJECTC.TMP - Sample Color-Graphics Template file
Format:
~~~~~~
SUBJECT I:<file> O:<file> C:<name> L:<length> S: D: F: G: A: B:
Examples:
~~~~~~~~
SUBJECT I:c:\rbbs\rbbs-pcm.def O:rbbs-pcw.def C:rbbs-pc L:3 S: D:
SUBJECT I:binkleym.def O:binkleyw.def C:binkleyterm f: g: a: b: l:3
Required command-line parameters:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
I: - Input file. Name of RBBS-PC Messages file to read. Usually this file is
the full name (and optional path) of a RBBS-PC Conference Messages file.
SUBJECT.EXE reads this Messages files SUBJECT field, strips out any occurances
of "(R)", sorts the SUBJECTs, computes the total messages for each particular
SUBJECT, then writes the information to a formatted Output file, specified by
the O: parameter. When creating an Output file, SUBJECT.EXE will not include
any SUBJECTs that are SUBJECTs of messages which are marked as private. Also,
if SUBJECT.EXE has any difficulty reading or finding the specified input file,
it will create a file called SUBJECT.ERR in the default directory from which
SUBJECT.EXE is run and detail the error for debugging purposes. If SUBJECT.ERR
already exists, the error information will just be appended to SUBJECT.ERR.
O: - Output file. Name (and optional path) of output file to be created by
SUBJECT.EXE. Use the same name as the RBBS-PC Conference file (up to 7
characters) and add "W.DEF" so that the Output file will automatically display
as user enters the Conference. For example, if the Conference Messages file is
COOKINGM.DEF, set the O: parameter to create the COOKINGW.DEF Conference WELCOME
file. RBBS-PC will automatically display the <conference name>W.DEF file. By
specifying a drive and path in this O: parameter, SUBJECT.EXE can create the
Output file in the subdirectory where RBBS-PC will be able to locate it and
display it (usually in the same directory as RBBS-PC.EXE and the <conference
name>M.DEF Conference Messages file is located.) If no drive and path are
specified, the Output file is created in the same directory from which
SUBJECT.EXE is run.
C: - Conference name to be used in Output file header. Do NOT use any [SPACE]
characters. The Conference name as appearing in the Output file will be in
fully capitalized regardless of how the Conference name appears on SUBJECT.EXE's
C: command line parameter (see examples below). If the Conference name contains
more than one word, an underline character can usually substitute for a space
character. For example, if the Conference name is "HOME REPAIR", you must
change the name so that no space characters appear in the name. "HOME_REPAIR"
with the underline character substituted for the space is a very good
substitution.
Optional parameters:
~~~~~~~~~~~~~~~~~~~
L: - Maximum number of lines in output file (Length of file). For appearances,
SUBJECT.EXE can create the Output file as small as one line which, by the way,
does not include header and footer messages that are automatically created by
SUBJECT.EXE. Setting the L: parameter at 1 will give you 1 line of SUBJECTs.
"1 line" of SUBJECTs works out to "3 SUBJECTs," because each line represents 3
SUBJECTs printed across the screen side-by-side. For formatting sake,
SUBJECT.EXE automatically creates one blank line at the top of the Output file,
followed by the Header line mentioning how many messages are in the Conference
and the name of the Conference (taken from the C: parameter). The next Header
line is optional (see the D: parameter below), and shows the dates represented
by the messages in the Conference. This is followed by another blank line.
Then the actual report begins; the Length of this report specified by this L:
parameter. Using a very minimum of 1 will give the shortest report. Using a
value of L:15 will give you one full screenful of report on a 25 by 80 monitor,
assuming that the number of different SUBJECTs in the Conference is greater than
15 times 3. If the number of SUBJECTs in the Conference is actually less than
L:<n> times 3, then the L: paramater will have no effect on the Output file.
However, if the number of SUBJECTs in the Conference is greater than <n> times
3, then the L: parameter will work to shorten the final Output file so that only
<n> times 3 SUBJECTs will be shown, for a total of <n> lines. If the Output
file is shortened, a footer blank line is entered, followed by a footer message
telling that the Output file had been shortened.
S: - Imbed RBBS-PC's SMART-TEXT Color commands in Output file. This S: paramter
line option tells SUBJECT.EXE to place RBBS-PC's SMART-TEXT codes throughout the
Output file for a colorful report. The assumption made by SUBJECT.EXE is that
ASCII 123 ("{") is used to turn on SMART-TEXT. RBBS-PC's CONFIG.EXE is used to
set the value of this special SMART-TEXT switch. A "{CS" is used at the top of
the Output file so that the screen can be filled with the Output file without
having RBBS-PC insert a "More?" prompt in the middle, if your Output files are
set by the L: parameter as less than or equal to 15. A final "{PB" is also
placed at the end of the Output file when the S: parameter is used, in order to
prevent the Output file from scrolling off the top of the screen. The "{PB"
accomplishes this by inserting a "More?" prompt at the end of the Output file.
D: - Include oldest and most recent date of Messages in output file (Date).
When this optional D: parameter is used, SUBJECT.EXE looks at the dates of all
the messages in the Conference and finds the message with the oldest date, and
the message with the most recent date. It uses both these dates to report the
ages of the messages in the Conference. SUBJECT.EXE is only coded to accurately
display dates in the range of January 1st, 1980, to December 31st, 1999. If I'm
still living at that time, I'll be glad to upgrade the code to handle the new
century!
F: and F:C - New with Version 2.0. This switch allows the use of a template
file. When this switch is used, SUBJECT.EXE looks on the default drive for a
template file, substituting the following strings:
o SUBJECT8901234567890 - SUBJECT header is substituted always beginning with
the most popular SUBJECT
o MSG - 3 character total number of messages in specified message base
o AREA - Up to 20 characters of the AREA name of the message base
o FMDATExx - 8 character Date of earliest message in message base in the
format of MM-DD-YY
o TODATExx - 8 character Date of most recent message in message base in the
format of MM-DD-YY
o ### - 3 character number of messages under one SUBJECT. Number of messages
under one SUBJECT always begins with the greatest number of messages.
SUBJECT.EXE substitues these various strings with real values, and creates a
file determined by the O: parameter and other command-line switches. If the
Output filename specified in the O: parameter is in the format "<7 letters-or-
less Conference Name> + W.DEF", the resultant Output filename is called "<7
letters-or-less Conference Name>". The optional path specified in the O:
parameter is also preserved.
The template file used by SUBJECT.EXE may be one of two files. SUBJECT.EXE
looks on the default drive for "<7 letters-or-less Conference name> + .TMP"
first, and, if not found, then SUBJECT.EXE looks for the default file called
SUBJECT.TMP and uses it. This facility is there for those SysOps who want to
have a special WELCOME file for any given Conference. Of course, if SUBJECT.EXE
cannot find either .TMP file in the default drive/(subdirectory), then
SUBJECT.EXE reports an error, and aborts any further processing. Note: Usage
of the Template files means that these Template files will not contain RBBS-PC's
SMART-TEXT codes even if the S: parameter if found on the command line. It is
up to the Template file to provide SMART-TEXT codes already if such commands are
wanted.
F:C - Use the C switch after the F: switch to allow SUBJECT.EXE to create
WELCOME files for Conferences using a Template file, such as SUBJECT.TMP
(default). SUBJECT.EXE will first look for the file "<7 letters-or-less
Conference Name> + .TMP", and if that Template file is not found in the default
drive/(subdirectory), SUBJECT.EXE will go onto look for SUBJECT.TMP and use that
as a Template file.
G: - This switch is used with the F: switch and creates a output file with the
letter "G" appended to the output file. If the output file is in the format "<7
letters-or-less Conference Name> + W.DEF", this switch creates the file "<7
letters-or-less Conference Name> + G". SUBJECT.EXE first looks in the default
directory for the template file "<7 letters-or-less Conference Name> + G.TMP"
and, if not found, uses the default file SUBJECTG.TMP.
A: - This switch is also used with the F: switch and creates a output file with
the letter "C" appended to the output file. If the output file is in the format
"<7 letters-or-less Conference Name> + W.DEF", this switch creates the file "<7
letters-or-less Conference Name> + C". SUBJECT.EXE first looks in the default
directory for the template file "<7 letters-or-less Conference Name> + C.TMP"
and, if not found, uses the default file SUBJECTC.TMP.
B: - Use of this switch allows SUBJECT.EXE to produce two types of WELCOME files
simultaneously. RBBS-PC's SUBBOARDS and CONFERENCES look for different WELCOME
files. Conferences look for a file in the format of "<7 letters-or-less
Conference Name> + W.DEF" only. Subboards look for a WELCOME file specified in
the "<7 letters-or-less Conference Name> + C.DEF" Subboard Config file. It is
assumed that the WELCOME file specified in the Subboard's Config file will be
"<7 letters-or-less Conference Name>". This B: switch would then produce both
the "<7 letters-or-less Conference Name>" WELCOME file for use with the
corresponding Subboard, and "<7 letters-or-less Conference Name> + W.DEF" for
use in the corresponding Conference.
Example 1 - SUBJECT.EXE using no optional parameters:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* There are 58 messages in the RBBS-PC Conference *
9-BAUD 450 5-RBBS INFO 5-UP/DOWNLOAD PROBLEM
4-CD-ROM 4-RBBS MESSAGE CONFERE 3-EXTENDED RAM
3-FILE > RBBS MESSAGE 3-MODEM 3-RBBS & DV
3-RBBS-PC.EXE 2-HI..!! 2-MU-EDIT
1-14.4K HST/DS PROBLEM 1-ADVICE 1-COLUMBUS DAY VIRUS
1-EDEF & DOS 1-HST 14.4 1-I WAS WONDERING...
1-MSGTOSS 1-NETMAIL ACCOUNTS 1-NIEUW RBBS
1-RBBS IN EUROPE 1-SUNTAC DRIVER 1-UPLOAD/DOWNLOAD RATI
Example 2 - SUBJECT.EXE using S: D: and L:3 parameters:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{CS
{C2* {C4There are{C2 358 {C4messages in the {C2OPEN_BIBLE {C4Conference {C2*
{C4Dated from {C210-03-89 {C4to{C2 10-15-89
{C1 65{C2-{C3BIBLE TRANSLATIONS {C1 13{C2-{C3CHRIST THE ROCK {C1 8{C2
{C1 8{C2-{C3FAITH {C1 8{C2-{C3IMAGES {C1 8{C2
{C1 7{C2-{C3MORMONISM/CULTS III {C1 7{C2-{C3NEW AGE {C1 7{C2
{C4Here are only some of the topics, in order of popularity.{C0
{PB
Note: Conference names ("RBBS-PC" and "OPEN_BIBLE" in Example 1 and 2) are
always capitalized.
Example 3 - Sample Template File:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
╔════════════════════════════════════════════════════════════════════════════╗
║ Welcome to the RBBS-PC Echo Conference ║
╠════════════════════════════════════════════════════════════════════════════╣
║ ║
║ Most discussed Topic in this Conference is: SUBJECT8901234567890 ║
║ ║
║ This Topic has ### Messages. Other popular Topics (in Alphabetical ║
║ order) include: ║
║ ║
╚════════════════════════════════════════════════════════════════════════════╝
SUBJECT8901234567890 - using ### Messages
SUBJECT8901234567890 - using ### Messages
SUBJECT8901234567890 - using ### Messages
SUBJECT8901234567890 - using ### Messages
...with more Topics also covered in this Conference
╔═════════════════════════════════════════════════════════════════════════════╗
║ This conference is distributed Nationwide ║
╚═════════════════════════════════════════════════════════════════════════════╝
Short Discussion about SUBJECT and MSGTOSS:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUBJECT.EXE performs quite well with Mike Zakharoff's new MSGTOSS Net/Echomail
Tosser Version 1.0 (12/22/89). SUBJECT.EXE can be invoked via MSGTOSS.CFG using
MSGTOSS's variables: [MSGFILE], [WELFILE], and [AREA]. SUBJECT.EXE will create
WELCOME files for Conferences or Subboards, or even a combination of the two,
producing files with SMART-TEXT, Ascii Graphics, Color Graphics or non-graphics
formats automatically without the SysOps help once these parameters are set.
Example 4 - Sample use with MSGTOSS *
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(* For more information about MSGTOSS, contact the Interstate BBS Network at
206/631-7813, Mike Zakharoff, SysOp.)
In MSGTOSS.CFG, one example may be:
UTIL1CMD---->SUBJECT I:[MSGFILE] O:[WELFILE] C:[AREA] F: G: A: B: L:6 D: S:
For example, if [MSGFILE] = "RBBS-PCM.DEF", [WELFILE] would default to "RBBS-
PCW.DEF" and [AREA] would be "RBBS-PC". Use of L:6, D:, and S: parameters would
produce "RBBS-PCW.DEF" file for use with the RBBS-PC Conference with a Length of
6 lines, oldest and most recent Dates included, and using RBBS-PC's SMART-TEXT
codes. Also, since the B: switch is present, SUBJECT.EXE would produce the
files "RBBS-PC", "RBBS-PCG", and "RBBS-PCC" which are the non-graphics, ASCII
Graphics and ANSI Color Graphics files for use with a RBBS-PC Subboard.
Again, the advantage of producing the unnecessary "<7 letters-or-less
Conference Name> + W.DEF" WELCOME file or the WELCOME files associated with the
corresponding Subboard, when RBBS-PC can only take advantage of one of these
options, is mainly to take advantage of MSGTOSS's automatic invocation of
SUBJECT.EXE from a batch file. The SysOp can use the Non-Graphics/ASCII
Graphics/ANSI Graphics WELCOME files associated with RBBS-PC's Subboards, and
have the option of simultaneously having MSGTOSS creating via SUBJECT.EXE,
WELCOME files for Conferences which use only the "<7 letters-or-less Conference
Name> + W.DEF" files. WELCOME files for both Subboards and Conferences are
automatically created using this method.
Final word:
~~~~~~~~~~
SUBJECT.EXE can also be run when you want to update the Output file(s)
regularly. SUBJECT.EXE can be run daily as part of your maintenance routine.
How you want to use SUBJECT.EXE is entirely left to your needs. A batch file
can look like this:
SUBJECT i:c:\rb\krishnam.def o:krishnaw.def c:krishna d: l:15 s:
SUBJECT i:c:\rb\biblem.def o:biblew.def c:open_bible d: l:15 s:
SUBJECT i:c:\rb\net115m.def o:net115w.def c:net115 d: l:15 s:
SUBJECT i:c:\rb\philm.def o:philw.def c:Philosophy d: l:15 s:
SUBJECT i:c:\rb\rbbs-pcm.def o:rbbs-pcw.def c:rbbs-pc d: l:15 s:
SUBJECT i:c:\rb\sciencem.def o:sciencew.def c:science d: l:15 s:
SUBJECT i:c:\rb\krishnam.def o:display c:krishna d: l:7
SUBJECT i:c:\rb\starm.def o:starw.def c:Stargaze d: l:15 s:
SUBJECT i:c:\rb\as-amm.def o:as-amw.def c:Asian-american d: l:15 s:
SUBJECT i:c:\rb\atheistm.def o:atheistw.def c:atheist d: l:15 s:
SUBJECT i:c:\rb\rbbs-sym.def o:rbbs-syw.def c:RBBS-Sysop d: l:15 s:
SUBJECT i:c:\rb\rbbs-sdm.def o:rbbs-sdw.def c:RBBS-Software d: l:15 s:
SUBJECT i:c:\rb\rbbsm&pm.def o:rbbsm&pw.def c:RBBSMail_&_Pack d: l:15 s:
SUBJECT i:c:\rb\reinm.def o:reinw.def c:Reincarnation d: l:15 s:
SUBJECT i:c:\rb\spiritm.def o:spiritw.def c:Spiritual d: l:15 s:
SUBJECT i:c:\rb\sysopm.def o:sysopw.def c:National_Sysop d: l:15 s:
SUBJECT i:c:\rb\ufom.def o:ufow.def c:UFO d: l:15 s:
SUBJECT i:c:\rb\vegem.def o:vegew.def c:Vegetarian d: l:15 s:
etc....
. .
Feel free to contact me at the : :
HARE KRISHNA RBBS : : *
(1:115/800 or 8:970/6) :: :: Chicago
at 1-312-743-7729 :: :: 2400 baud
for any comments of ::.:: 24 hour
questions concerning : : *
SUBJECT.EXE. Source : :
code for SUBJECT.EXE .-' :
is also available : :
upon request. : : : : .
: : : `-. , ':
:..: : : .' :
: : : : : :
: : .-' `-. : :
: : .---' : : `--------.
/\ : : : : .-----. : :
.----. / \ : : : : : `-. : :
: `--. : : : : : `-' `----' :
--' `--' `-' `--' `-
History:
~~~~~~~
Version 1.0 - First premature release, works ok, but should have been tested
longer.
Version 1.1 - Fixes bugs. Now works on message file with last message in
message file marked private. Also, properly writes file
SUBJECT.ERR.
Version 1.2 - Fixes endless looping when last message in Message file has been
purged from the Conference and last message number given in the
checkpoint record is different from actual last message number
in Conference.
Version 1.3 - Fixes error when "(R)" string is stripped from the subject header
on a message that has no subject(?) Multiple "(R)"s are also
now stripped, including "(r)"s(?) Trims off any leading spaces
in subject header. Sometimes NUL characters show up in the
subject header; resulting in different subject counts for the
same subject headers. The fix eliminates this error. Nulls
also cause crooked displays to be sent remotely. All nulls are
now converted to space characters. Omits date line ("d:"
parameter) in empty conferences where there are no dates.
Subject.exe will continue to process correctly if encountering a
message with a blank subject field. But, if there is more than
one message with a blank subject field in a row (rare),
subject.exe is not yet prepared to handle that. Finally, does
not include corrupted, non-numerical dates in the date field.
Version 2.0 - Added the use of Template files and command line switches F:, G:,
A: and B: to produce more Output file formatting options.
* END OF DOCUMENT * * END OF DOCUMENT * * END OF DOCUMENT * * END OF DOCUMENT *